type int = number;
//class ArenaShopBuyLimitInfo
    
    export  class ArenaShopBuyLimitInfo
    {
        constructor()
        {
            
            this._itemBuyLimitDict = new Map<any, any> /* flash.utils.Dictionary */();
            return;
        }

        public updateBuyLimit(arg1: int, arg2: int, arg3: string): void
        {
            this._itemBuyLimitDict[arg1 + arg3] = arg2;
            return;
        }

        public getBuyLimit(arg1: int, arg2: string): int
        {
            return this._itemBuyLimitDict[arg1 + arg2];
        }

        public isInLimit(arg1: int): Boolean
        {
            var loc1=null;
            var loc2=0;
            var loc3=this._itemBuyLimitDict;
            for (loc1 in loc3) 
            {
                if (loc1.indexOf(arg1.toString()) == -1) 
                {
                    continue;
                }
                return true;
            }
            return false;
        }

        public getAmountLabel(arg1: int): string
        {
            if (this.isInLimit(arg1)) 
            {
                return this.getBuyLimit(arg1, ArenaShopBuyLimitInfo.KEY_NUM) + "/" + this.getBuyLimit(arg1, ArenaShopBuyLimitInfo.KEY_NUM_LIMIT);
            }
            return "";
        }

        public getLeftNum(arg1: int): int
        {
            return this.getBuyLimit(arg1, ArenaShopBuyLimitInfo.KEY_NUM_LIMIT) - this.getBuyLimit(arg1, ArenaShopBuyLimitInfo.KEY_NUM);
        }

        public getConstName(arg1: int): string
        {
            return "GradeSevenSparLimit" + arg1;
        }

        public static /* const */KEY_NUM: string="num";

        public static /* const */KEY_NUM_LIMIT: string="num_limit";

        public static /* const */KEY_ARENA_LIMIT: string="arena_limit";

        public /* var */mark: int;

        /* internal */ /* var */_itemBuyLimitDict: Map<any, any> /* flash.utils.Dictionary */;
    }
